package sctu.edu.java.year2016.team01.lishuai.day20160606.chapter15_2;

/**
 * Created by 李大帅 on 2016/6/11.
 * 尝试开发一个窗体，在窗体中有两个按钮，一个是“开始”按钮，一个是“结束”按钮，当用
 * 用户点击“开始”按钮时，在控制台中持续打印一段话，当用户单击“停止”按钮时，控制台结束打印。
 */
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class JframThread extends JFrame {

    private Thread thread;
    Timer timer;
    int index = 1;


    public static void main(String[] args) {

        init(new JframThread(), 400, 400);
    }

    public JframThread() {
        Container jf = getContentPane();
        JButton jb1 = new JButton("开始");
        jb1.setBounds(200, 300, 60, 40);
        jb1.setVisible(true);

        timer = new Timer(500, new ActionListener() {//每500毫秒打印1次
            public void actionPerformed(ActionEvent e) {
                System.out.println("打印"+"第"+index+"行\n");
                index++;
            }
        });
        jb1.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                timer.start();//开始
            }
        });



        jf.add(jb1);

        JButton jb2 = new JButton("结束");
        jb2.setBounds(100, 100, 40, 20);
        jb2.setVisible(true);

        jb2.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                timer.stop();//停止
            }
        });

        jf.add(jb2);
    }

    public static void init(JFrame frame, int width, int height) {
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(width, height);
        frame.setVisible(true);

    }
}

